<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<link rel="stylesheet" href="style.css" type="text/css">
<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type">
<link rel="Start" href="index.html">
<link rel="previous" href="Froc_afp.html">
<link rel="next" href="Froc_dom.html">
<link rel="Up" href="index.html">
<link title="Index of types" rel=Appendix href="index_types.html">
<link title="Index of values" rel=Appendix href="index_values.html">
<link title="Index of modules" rel=Appendix href="index_modules.html">
<link title="Froc" rel="Chapter" href="Froc.html">
<link title="Froc_afp" rel="Chapter" href="Froc_afp.html">
<link title="Froc_ddg" rel="Chapter" href="Froc_ddg.html">
<link title="Froc_dom" rel="Chapter" href="Froc_dom.html">
<link title="Froc_dom_anim" rel="Chapter" href="Froc_dom_anim.html"><title>Froc_ddg</title>
</head>
<body>
<div class="navbar"><a href="Froc_afp.html">Previous</a>
&nbsp;<a href="index.html">Up</a>
&nbsp;<a href="Froc_dom.html">Next</a>
</div>
<center><h1>Module <a href="type_Froc_ddg.html">Froc_ddg</a></h1></center>
<br>
<pre><span class="keyword">module</span> Froc_ddg: <code class="code">sig</code> <a href="Froc_ddg.html">..</a> <code class="code">end</code></pre>Dynamic dependency graph underlying <code class="code">Froc</code> and <code class="code">Froc_afp</code>.<br>
<hr width="100%">
<pre><span class="keyword">type</span> <a name="TYPEt"></a><code class="type">'a</code> t </pre>

<pre><span class="keyword">val</span> <a name="VALreturn"></a>return : <code class="type">?eq:('a -> 'a -> bool) -> 'a -> 'a <a href="Froc_ddg.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALfail"></a>fail : <code class="type">exn -> 'a <a href="Froc_ddg.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALbind"></a>bind : <code class="type">'a <a href="Froc_ddg.html#TYPEt">t</a> -> ('a -> 'b <a href="Froc_ddg.html#TYPEt">t</a>) -> 'b <a href="Froc_ddg.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VAL(>>=)"></a>(&gt;&gt;=) : <code class="type">'a <a href="Froc_ddg.html#TYPEt">t</a> -> ('a -> 'b <a href="Froc_ddg.html#TYPEt">t</a>) -> 'b <a href="Froc_ddg.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALlift"></a>lift : <code class="type">?eq:('a -> 'a -> bool) -> ('b -> 'a) -> 'b <a href="Froc_ddg.html#TYPEt">t</a> -> 'a <a href="Froc_ddg.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALblift"></a>blift : <code class="type">'a <a href="Froc_ddg.html#TYPEt">t</a> -> ?eq:('b -> 'b -> bool) -> ('a -> 'b) -> 'b <a href="Froc_ddg.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALcatch"></a>catch : <code class="type">(unit -> 'a <a href="Froc_ddg.html#TYPEt">t</a>) -> (exn -> 'a <a href="Froc_ddg.html#TYPEt">t</a>) -> 'a <a href="Froc_ddg.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALtry_bind"></a>try_bind : <code class="type">(unit -> 'a <a href="Froc_ddg.html#TYPEt">t</a>) -><br>       ('a -> 'b <a href="Froc_ddg.html#TYPEt">t</a>) -> (exn -> 'b <a href="Froc_ddg.html#TYPEt">t</a>) -> 'b <a href="Froc_ddg.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALcatch_lift"></a>catch_lift : <code class="type">(unit -> 'a <a href="Froc_ddg.html#TYPEt">t</a>) -><br>       ?eq:('a -> 'a -> bool) -> (exn -> 'a) -> 'a <a href="Froc_ddg.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALtry_bind_lift"></a>try_bind_lift : <code class="type">(unit -> 'a <a href="Froc_ddg.html#TYPEt">t</a>) -><br>       ?eq:('b -> 'b -> bool) -> ('a -> 'b) -> (exn -> 'b) -> 'b <a href="Froc_ddg.html#TYPEt">t</a></code></pre><br><code><span class="keyword">type</span> <a name="TYPEresult"></a><code class="type">'a</code> result = </code><table class="typetable">
<tr>
<td align="left" valign="top" >
<code><span class="keyword">|</span></code></td>
<td align="left" valign="top" >
<code><span class="constructor">Value</span> <span class="keyword">of</span> <code class="type">'a</code></code></td>

</tr>
<tr>
<td align="left" valign="top" >
<code><span class="keyword">|</span></code></td>
<td align="left" valign="top" >
<code><span class="constructor">Fail</span> <span class="keyword">of</span> <code class="type">exn</code></code></td>

</tr></table>


<pre><span class="keyword">val</span> <a name="VALread"></a>read : <code class="type">'a <a href="Froc_ddg.html#TYPEt">t</a> -> 'a</code></pre><pre><span class="keyword">val</span> <a name="VALread_result"></a>read_result : <code class="type">'a <a href="Froc_ddg.html#TYPEt">t</a> -> 'a <a href="Froc_ddg.html#TYPEresult">result</a></code></pre><pre><span class="keyword">val</span> <a name="VALwrite"></a>write : <code class="type">'a <a href="Froc_ddg.html#TYPEt">t</a> -> 'a -> unit</code></pre><pre><span class="keyword">val</span> <a name="VALwrite_exn"></a>write_exn : <code class="type">'a <a href="Froc_ddg.html#TYPEt">t</a> -> exn -> unit</code></pre><pre><span class="keyword">val</span> <a name="VALwrite_result"></a>write_result : <code class="type">'a <a href="Froc_ddg.html#TYPEt">t</a> -> 'a <a href="Froc_ddg.html#TYPEresult">result</a> -> unit</code></pre><pre><span class="keyword">val</span> <a name="VALnotify"></a>notify : <code class="type">'a <a href="Froc_ddg.html#TYPEt">t</a> -> ('a <a href="Froc_ddg.html#TYPEresult">result</a> -> unit) -> unit</code></pre><pre><span class="keyword">val</span> <a name="VALcleanup"></a>cleanup : <code class="type">(unit -> unit) -> unit</code></pre><pre><span class="keyword">val</span> <a name="VALmake"></a>make : <code class="type">?event:bool -><br>       ?eq:('a -> 'a -> bool) -> ?result:'a <a href="Froc_ddg.html#TYPEresult">result</a> -> unit -> 'a <a href="Froc_ddg.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALinit"></a>init : <code class="type">unit -> unit</code></pre><pre><span class="keyword">val</span> <a name="VALpropagate"></a>propagate : <code class="type">unit -> unit</code></pre><pre><span class="keyword">val</span> <a name="VALset_exn_handler"></a>set_exn_handler : <code class="type">(exn -> unit) -> unit</code></pre><pre><span class="keyword">val</span> <a name="VALset_debug"></a>set_debug : <code class="type">(string -> unit) -> unit</code></pre><pre><span class="keyword">val</span> <a name="VALbind2"></a>bind2 : <code class="type">'a <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'b <a href="Froc_ddg.html#TYPEt">t</a> -> ('a -> 'b -> 'c <a href="Froc_ddg.html#TYPEt">t</a>) -> 'c <a href="Froc_ddg.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALlift2"></a>lift2 : <code class="type">?eq:('a -> 'a -> bool) -><br>       ('b -> 'c -> 'a) -> 'b <a href="Froc_ddg.html#TYPEt">t</a> -> 'c <a href="Froc_ddg.html#TYPEt">t</a> -> 'a <a href="Froc_ddg.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALblift2"></a>blift2 : <code class="type">'a <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'b <a href="Froc_ddg.html#TYPEt">t</a> -> ?eq:('c -> 'c -> bool) -> ('a -> 'b -> 'c) -> 'c <a href="Froc_ddg.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALbind3"></a>bind3 : <code class="type">'a <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'b <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'c <a href="Froc_ddg.html#TYPEt">t</a> -> ('a -> 'b -> 'c -> 'd <a href="Froc_ddg.html#TYPEt">t</a>) -> 'd <a href="Froc_ddg.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALlift3"></a>lift3 : <code class="type">?eq:('a -> 'a -> bool) -><br>       ('b -> 'c -> 'd -> 'a) -><br>       'b <a href="Froc_ddg.html#TYPEt">t</a> -> 'c <a href="Froc_ddg.html#TYPEt">t</a> -> 'd <a href="Froc_ddg.html#TYPEt">t</a> -> 'a <a href="Froc_ddg.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALblift3"></a>blift3 : <code class="type">'a <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'b <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'c <a href="Froc_ddg.html#TYPEt">t</a> -><br>       ?eq:('d -> 'd -> bool) -> ('a -> 'b -> 'c -> 'd) -> 'd <a href="Froc_ddg.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALbind4"></a>bind4 : <code class="type">'a <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'b <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'c <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'd <a href="Froc_ddg.html#TYPEt">t</a> -> ('a -> 'b -> 'c -> 'd -> 'e <a href="Froc_ddg.html#TYPEt">t</a>) -> 'e <a href="Froc_ddg.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALlift4"></a>lift4 : <code class="type">?eq:('a -> 'a -> bool) -><br>       ('b -> 'c -> 'd -> 'e -> 'a) -><br>       'b <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'c <a href="Froc_ddg.html#TYPEt">t</a> -> 'd <a href="Froc_ddg.html#TYPEt">t</a> -> 'e <a href="Froc_ddg.html#TYPEt">t</a> -> 'a <a href="Froc_ddg.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALblift4"></a>blift4 : <code class="type">'a <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'b <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'c <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'd <a href="Froc_ddg.html#TYPEt">t</a> -><br>       ?eq:('e -> 'e -> bool) -> ('a -> 'b -> 'c -> 'd -> 'e) -> 'e <a href="Froc_ddg.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALbind5"></a>bind5 : <code class="type">'a <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'b <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'c <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'd <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'e <a href="Froc_ddg.html#TYPEt">t</a> -><br>       ('a -> 'b -> 'c -> 'd -> 'e -> 'f <a href="Froc_ddg.html#TYPEt">t</a>) -> 'f <a href="Froc_ddg.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALlift5"></a>lift5 : <code class="type">?eq:('a -> 'a -> bool) -><br>       ('b -> 'c -> 'd -> 'e -> 'f -> 'a) -><br>       'b <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'c <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'd <a href="Froc_ddg.html#TYPEt">t</a> -> 'e <a href="Froc_ddg.html#TYPEt">t</a> -> 'f <a href="Froc_ddg.html#TYPEt">t</a> -> 'a <a href="Froc_ddg.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALblift5"></a>blift5 : <code class="type">'a <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'b <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'c <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'd <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'e <a href="Froc_ddg.html#TYPEt">t</a> -><br>       ?eq:('f -> 'f -> bool) -> ('a -> 'b -> 'c -> 'd -> 'e -> 'f) -> 'f <a href="Froc_ddg.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALbind6"></a>bind6 : <code class="type">'a <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'b <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'c <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'd <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'e <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'f <a href="Froc_ddg.html#TYPEt">t</a> -><br>       ('a -> 'b -> 'c -> 'd -> 'e -> 'f -> 'g <a href="Froc_ddg.html#TYPEt">t</a>) -> 'g <a href="Froc_ddg.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALlift6"></a>lift6 : <code class="type">?eq:('a -> 'a -> bool) -><br>       ('b -> 'c -> 'd -> 'e -> 'f -> 'g -> 'a) -><br>       'b <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'c <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'd <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'e <a href="Froc_ddg.html#TYPEt">t</a> -> 'f <a href="Froc_ddg.html#TYPEt">t</a> -> 'g <a href="Froc_ddg.html#TYPEt">t</a> -> 'a <a href="Froc_ddg.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALblift6"></a>blift6 : <code class="type">'a <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'b <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'c <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'd <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'e <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'f <a href="Froc_ddg.html#TYPEt">t</a> -><br>       ?eq:('g -> 'g -> bool) -><br>       ('a -> 'b -> 'c -> 'd -> 'e -> 'f -> 'g) -> 'g <a href="Froc_ddg.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALbind7"></a>bind7 : <code class="type">'a <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'b <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'c <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'd <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'e <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'f <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'g <a href="Froc_ddg.html#TYPEt">t</a> -><br>       ('a -> 'b -> 'c -> 'd -> 'e -> 'f -> 'g -> 'h <a href="Froc_ddg.html#TYPEt">t</a>) -> 'h <a href="Froc_ddg.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALlift7"></a>lift7 : <code class="type">?eq:('a -> 'a -> bool) -><br>       ('b -> 'c -> 'd -> 'e -> 'f -> 'g -> 'h -> 'a) -><br>       'b <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'c <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'd <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'e <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'f <a href="Froc_ddg.html#TYPEt">t</a> -> 'g <a href="Froc_ddg.html#TYPEt">t</a> -> 'h <a href="Froc_ddg.html#TYPEt">t</a> -> 'a <a href="Froc_ddg.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALblift7"></a>blift7 : <code class="type">'a <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'b <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'c <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'd <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'e <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'f <a href="Froc_ddg.html#TYPEt">t</a> -><br>       'g <a href="Froc_ddg.html#TYPEt">t</a> -><br>       ?eq:('h -> 'h -> bool) -><br>       ('a -> 'b -> 'c -> 'd -> 'e -> 'f -> 'g -> 'h) -> 'h <a href="Froc_ddg.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALbindN"></a>bindN : <code class="type">'a <a href="Froc_ddg.html#TYPEt">t</a> list -> ('a list -> 'b <a href="Froc_ddg.html#TYPEt">t</a>) -> 'b <a href="Froc_ddg.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALliftN"></a>liftN : <code class="type">?eq:('a -> 'a -> bool) -><br>       ('b list -> 'a) -> 'b <a href="Froc_ddg.html#TYPEt">t</a> list -> 'a <a href="Froc_ddg.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALbliftN"></a>bliftN : <code class="type">'a <a href="Froc_ddg.html#TYPEt">t</a> list -><br>       ?eq:('b -> 'b -> bool) -> ('a list -> 'b) -> 'b <a href="Froc_ddg.html#TYPEt">t</a></code></pre></body></html>